﻿using System.Linq;
using Grundy.Common;
using Grundy.Message;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using FluentAssertions;

namespace Grundy.CryptographicServices.Tests
{
    [TestClass]
    public class NodeFingerprintIdentityProviderTests
    {
        [TestMethod]
        public void Should_Get_Identifiers()
        {
            var clientMachineIdentityProvider = new NodeFingerprintIdentityProvider();
            var identifiers = clientMachineIdentityProvider.GetIdentifiers();
            Assert.AreEqual("NodeFingerprintIdentityProvider", clientMachineIdentityProvider.Type);
            identifiers.Count().Should().BeGreaterOrEqualTo(3);
            identifiers[Identifiers.Processor].Should().NotBeEmpty();
            identifiers[Identifiers.MacAddress].Should().NotBeEmpty();
            identifiers[Identifiers.Bios].Should().NotBeEmpty();
        }
    }
}